package com.wnxy.carl.carlorderassembly.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wnxy.carl.carlorderassembly.entity.Order;
import com.wnxy.carl.dto.OrderDTO;
import com.wnxy.carl.dto.PageDTO;
import com.wnxy.carl.param.PageParam;
import com.wnxy.carl.param.order.*;

/**
 * <p>
 * 订单表 服务类
 * </p>
 *
 * @author Lucas
 * @since 2021-11-12
 */
public interface IOrderService extends IService<Order> {

    //生成订单 OrderDTO
    public OrderDTO generateOrder(GenerateOrderParam generateOrderParam);
    //修改订单 OrderDTO
    public OrderDTO amendOrder(AmendOrderParam amendOrderParam);
    //用户查询订单 PageDTO<OrderDTO>
    public PageDTO<OrderDTO> myOrder(PageParam<MyOrderParam> pageParam);
    //账户余额支付 Boolean
    public void balancePay(MoneyPayParam moneyPayParam);
    //门店查询订单 PageDTO<OrderDTO>
    public PageDTO<OrderDTO> seeStoreOrder(PageParam<SeeStoreOrderParam> pageParam);
    //用于时间段订单信息的统计 StatisticsOrderDTO
    public PageDTO<OrderDTO> statisticsOrder(PageParam<StatisticsOrderParam> pageParam);
}
